#include "User.h"

/*
读取Key值并从串口1输出Demo
接线:   (GND--->KEY--->E4)
        (A9--->PC端Rx, 串口波特率115200)
效果:   串口助手每隔一段时间打印E4口的值，按下为0，松开为1
对应接口:void GPIO::GPIO(Pin_enum pin, GPIO_mode mode):初始化IO口
        uint8_t GPIO::read():读取对象IO口的值
*/

/*
void GPIO::GPIO(Pin_enum pin, GPIO_mode mode)
构造GPIO对象，并初始化对应的IO口
pin:    IO口
mode:   输入输出模式，可输入的值为
    {
        INPUT：浮空输入
        INPUT_PULLUP：上拉输入
        INPUT_PULLDOWN：下拉输入
        OUT_PP：推挽输出
        OUT_OD：开漏输出
    }
*/
GPIO Key(E4, INPUT_PULLUP);
HardwareUART Serial1(UART_1);

void setup(void)
{
    //以下添加初始化代码
    Serial1.begin(115200);
    Serial1.println("Hello world");
    Serial1 << "Ready!\r\n";
}

void loop(void)
{
    //以下添加循环代码
    /*
    uint8_t GPIO::read()
    读取对应IO对象的值
    返回值: 1 高电平; 0 低电平
    */
    int nKeyValue = Key.read();

    Serial1 << "KEY:" << nKeyValue << "\r\n";
    delay_ms(100);
}
